var ds = new Ext.data.Store({
	proxy : new Ext.data.HttpProxy({
		url : 'find_purchaseorder_by_page.action',
		method : 'POST'
	}),
	reader : new Ext.data.JsonReader({
		root : 'purchaseOrders',
		totalProperty : 'totalCount'
	}, [ {
		name : 'purchaseOrderId',
		mapping : 'purchaseOrderId',
		type : 'long'
	}, {
		name : 'isStorage',
		mapping : 'isStorage',
		type : 'boolean'
	}, {
		name : 'purchaseOrderCreateTime',
		type : 'long'
	}, {
		name : 'orderCreatorName',
		type : 'string'
	}, {
		name : 'purchaseOrderCreator',
		type : 'string'
	}, {
		name : 'items',
		type : 'array'
	} ])
});

var cm_menuscript = new Ext.grid.ColumnModel(
		[
				new Ext.grid.RowNumberer(),
				{
					header : "采购单号",
					width : 120,
					dataIndex : 'purchaseOrderId',
					sortable : true,
					renderer : function(value, metadata, record) {
						return "<a href='javascript:void(0)' onclick='javascript:findPurchaseOrderItemsByPurchaseOrdeId("
								+ value + ")'>采购单" + value + "</a>";
					}
				},
				{
					header : "采购单item数",
					width : 120,
					dataIndex : 'items',
					sortable : true,
					renderer : function(value, metadata, record) {
						return value.length;
					}
				},
				{
					header : "创建时间",
					width : 120,
					dataIndex : 'purchaseOrderCreateTime',
					sortable : true,
					renderer : function(value, metadata, record) {
						return new Date(value).format('Y-m-d H:i');
					}
				},
				{
					header : "创建人",
					width : 120,
					dataIndex : 'purchaseOrderCreator',
					sortable : true
				},
				{
					header : "操作",
					width : 240,
					dataIndex : 'operation',
					sortable : true,
					renderer : function(value, metadata, record) {
						return "<a href='javascript:void(0)' onclick=javascript:makePurchaseOrderStorage('"
								+ record.data.purchaseOrderId + "')>入库</a>";
					}
				} ]);

var grid = new Ext.grid.GridPanel({
	title : '当前位置：采购单管理',
	loadMask : {
		msg : '数据加载中...'
	},
	ds : ds,
	store : ds,
	region : 'center',
	autoScroll : true,
	cm : cm_menuscript,
	autoExpandColumn : 1,
	bodyStyle : 'width:100%',
	bbar : new Ext.PagingToolbar({
		pageSize : 20,
		store : ds,
		displayInfo : true,
		beforePageText : '第',
		afterPageText : '页-共{0}页',
		displayMsg : '显示{0} - {1} 条  共 {2} 条',
		emptyMsg : "没有记录"
	})
});
ds.load({
	params : {
		start : 0,
		limit : 20
	}
});

window.makePurchaseOrderStorage = function(needParam) {
	Ext.Ajax.request({
		url : "make_purchaseOrder_storage.action",
		method : 'post',
		params : {
			purchaseOrderId : needParam
		},
		success : function(resp, opts) {
			Ext.Msg.show({
				title : '消息',
				msg : '入库成功！',
				buttons : Ext.Msg.OK,
				icon : Ext.Msg.INFO,
				width : 200
			});
			ds.reload();
		},
		failure : function() {
			Ext.Msg.show({
				title : '错误提示',
				msg : '删除失败！',
				buttons : Ext.Msg.OK,
				icon : Ext.Msg.ERROR,
				width : 200
			});
		}
	});
}

window.findPurchaseOrderItemsByPurchaseOrdeId = function(needParam) {
	Ext.Ajax.request({
		url : "find_purchaseItems_by_purchaseId.action",
		method : 'post',
		params : {
			purchaseOrderId : needParam
		},
		success : function(resp, opts) {
			
			var cm_purchase_item = new Ext.grid.ColumnModel(
					[
							new Ext.grid.RowNumberer(),

							{
								header : "原料名称",
								width : 80,
								dataIndex : 'baseProductName',
								sortable : true
							}
							,
							{
								header : "SUBJECT1",
								width : 80,
								dataIndex : 'productColorName',
								sortable : true
							}
//							 , {
//							 header : "SUBJECT2",
//							 width : 80,
//							 dataIndex :'productLengthShow',
//							 sortable : true
//							 }
							,
							{
								header : "备注",
								width : 80,
								dataIndex : 'productNote',
								sortable : true
							},
							{
								header : "采购数",
								width : 80,
								dataIndex : 'actualOrderNumber',
								sortable : true
							}
							]);
			var response_text = Ext.util.JSON.decode(resp.responseText);
			console.log((response_text.purchaseOrderItems)[0].bomItem.product.productColor.productColorName);
			var xs = new Ext.data.Store({
				proxy : new Ext.data.MemoryProxy(
						response_text),
				reader : new Ext.data.JsonReader({
					root:'purchaseOrderItems'
				}, [
				{
					name : 'baseProductName',
					mapping : 'bomItem.product.baseProduct.baseProductName',
					type : 'long'
				}
				, 
				{
					name : 'productColorName',
					mapping : 'bomItem.product.productColor.productColorName',
					type : 'string'
				}
//				 , {
//				 name : 'productLengthShow',
//				 mapping : 'bomItem.product.productLength.productLengthShow',
//				 type : 'string'
//				 }
				, {
					name : 'productNote',
					mapping : 'bomItem.product.productNote',
					type : 'string'
				}, {
					name : 'actualOrderNumber',
					mapping : 'bomItem.extra.actualOrderNumber',
					type : 'int'
				}
				])
			});
			xs.load();
			var purchase_item_grid = new Ext.grid.GridPanel({
				header : false,
				loadMask : {
					msg : '数据加载中...'
				},
				ds:xs,
				region : 'center',
				autoScroll : true,
				cm : cm_purchase_item,
				autoExpandColumn : 1,
				height : 400
			});
			purchase_list_item_window = new Ext.Window({
				title : '采购单详情',
				width : 600,
				iconCls : 'manuscript_search',
				resizable : false,
				autoHeight : true,
				constrain : true,
				modal : true,
				closeAction : 'hide',
				items : purchase_item_grid
			}).show();
		},
		failure : function() {
		}
	});
}

var p_menuScript = {
	id : 'order-purchase-list',
	border : false,
	layout : 'border',
	items : [ grid ]
};
Ext.getCmp('content-panel').add(p_menuScript);
Ext.getCmp('content-panel').layout.setActiveItem('order-purchase-list');
Ext.getCmp('content-panel').uxmodules = "undefined";